<section [formGroup]="snsConfigForm" fxLayout="column">
  <mat-form-field class="mat-block" style="padding-bottom: 8px;">
    <mat-label translate>tb.rulenode.topic-arn-pattern</mat-label>
    <input required matInput formControlName="topicArnPattern">
    <mat-error *ngIf="snsConfigForm.get('topicArnPattern').hasError('required')">
      {{ 'tb.rulenode.topic-arn-pattern-required' | translate }}
    </mat-error>
    <mat-hint [innerHTML]="'tb.rulenode.general-pattern-hint' | translate | safeHtml"></mat-hint>
  </mat-form-field>
  <mat-form-field class="mat-block">
    <mat-label translate>tb.rulenode.aws-access-key-id</mat-label>
    <input required matInput formControlName="accessKeyId">
    <mat-error *ngIf="snsConfigForm.get('accessKeyId').hasError('required')">
      {{ 'tb.rulenode.aws-access-key-id-required' | translate }}
    </mat-error>
  </mat-form-field>
  <mat-form-field class="mat-block">
    <mat-label translate>tb.rulenode.aws-secret-access-key</mat-label>
    <input required matInput formControlName="secretAccessKey">
    <mat-error *ngIf="snsConfigForm.get('secretAccessKey').hasError('required')">
      {{ 'tb.rulenode.aws-secret-access-key-required' | translate }}
    </mat-error>
  </mat-form-field>
  <mat-form-field class="mat-block">
    <mat-label translate>tb.rulenode.aws-region</mat-label>
    <input required matInput formControlName="region">
    <mat-error *ngIf="snsConfigForm.get('region').hasError('required')">
      {{ 'tb.rulenode.aws-region-required' | translate }}
    </mat-error>
  </mat-form-field>
</section>
